package cn.yh.register.hosp.service;

import cn.yh.register.model.hosp.Department;
import cn.yh.register.vo.hosp.DepartmentQueryVo;
import cn.yh.register.vo.hosp.DepartmentVo;
import org.springframework.data.domain.Page;

import java.util.List;
import java.util.Map;

public interface DepartmentService {
    /**
     * 新增科室信息
     * @param objectMap 科室信息
     */
    void saveDepartment(Map<String, Object> objectMap);

    /**
     *  分页查询科室信息
     * @param current 当前页
     * @param limit  每页条数
     * @param queryVo 查询条件
     * @return
     */
    Page<Department> findDeptList(Integer current, Integer limit, DepartmentQueryVo queryVo);

    /**
     *  删除医院科室
     * @param hoscode 医院code
     * @param depcode 科室code
     */
    void remove(String hoscode, String depcode);


    /**
     * 查询树型结构的科室排班列表
     * @param hoscode 科室编号
     * @return 医院编号
     */
    List<DepartmentVo> findDeptTree(String hoscode);

    /**
     * 查询科室信息
     * @param hoscode 医院编号
     * @param depcode 科室编号
     * @return
     */
    Department getDepartment(String hoscode, String depcode);
}
